package org.cug.mapper;

import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update;
import org.cug.pojo.User;

import java.util.List;

@Mapper
public interface UserMapper {
    //根据用户名查询用户
    @Select("select * from user where username=#{username}")
    User findByUserName(String username);
    //添加用户
    @Insert("insert into user(username,password,create_time,update_time)"
            +"values(#{username},#{md5Password},now(),now())")
    void add(String username, String md5Password);
    //更新用户的昵称，邮箱
    @Update("update user set nickname=#{nickname},email=#{email},update_time=#{updateTime} where id=#{id}")
    void update(User u);
    //更新用户头像
    @Update("update user set user_pic=#{avatarUrl}, update_time=now() where id=#{id}")
    void updateAvatar(String avatarUrl, Integer id);

    @Update("update user set password=#{md5String},update_time=now() where id=#{id}")
    void updatePwd(String md5String, Integer id);
    //得到用户权限
    @Select("select department,role,college from user where id=#{userId}")
    User getrole(Integer userId);
    //获取整个系的所有人
    List<Integer> getusers(Integer department);
    //获取整个学院的所有人
    @Select("select id from user where college=#{college}")
    List<Integer> getuserscol(Integer college);
}
